/* 
 * @author younger
 * @date 2020-04-06
 * @description 封装菜单模块API，包括
 *  - menuListOperateAPI 菜单创建/编辑/删除
 *  - getMenuListAPI 获取菜单列表
*/

import request from '@/utils/request.js';

/**
 * 菜单创建/编辑/删除
 *  - post请求
 * @param {*} data // post请求参数
 *      - action {String}: 接口操作（新增: create 编辑: edit 删除: delete）
 *      - _id {Number}: 菜单ID（新增菜单无需传递）
 *      - menuType {Number}: 菜单类型（1:菜单 2:按钮）
 *      - menuName {String}: 菜单名称
 *      - menuCode {String}: 菜单标识符（只有按钮类型才有，用于确定按钮的权限）
 *      - path {String}: 菜单路由（访问哪个路由可以访问到该菜单）
 *      - icon {String}: 菜单图标
 *      - component {String}: 组件地址
 *      - parentId {Array[String]}: 父菜单ID
 * @returns 
 */
export async function menuListOperateAPI(data) {
    return await request({
        method: 'post',
        url: '/menu/operate',
        data,
    });
}

/**
 * 获取菜单列表
 *  - get请求
 * @returns 
 */
export async function getMenuListAPI() {
    return await request({
        method: 'get',
        url: '/menu/list',
    });
}